home *** CD-ROM | disk | FTP | other *** search
/ IRIX Installation Tools & Overlays 2002 November / SGI IRIX Installation Tools & Overlays 2002 November - Disc 4.iso / dist / motif21_dev.idb / usr / Motif-2.1 / include / Xm / ManagerP.h.z / ManagerP.h
C/C++ Source or Header  |  2002-10-15  |  6KB  |  247 lines

  1. /* 
  2.  *  @OSF_COPYRIGHT@
  3.  *  COPYRIGHT NOTICE
  4.  *  Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc.
  5.  *  ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for
  6.  *  the full copyright text.
  7. */ 
  8. /* 
  9.  * HISTORY
  10. */ 
  11. /* $XConsortium: ManagerP.h /main/10 1996/03/28 15:59:43 daniel $ */
  12. /* (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  13. /* (c) Copyright 1989, 1990 DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
  14. /* (c) Copyright 1988 MASSACHUSETTS INSTITUTE OF TECHNOLOGY  */
  15. #ifndef _XmManagerP_h
  16. #define _XmManagerP_h
  17.  
  18. #ifndef _XmNO_BC_INCL
  19. #define _XmNO_BC_INCL
  20. #endif
  21.  
  22. #include <Xm/XmP.h>
  23.  
  24. #ifdef __cplusplus
  25. extern "C" {
  26. #endif
  27.  
  28. /*  Access Macros  */
  29.  
  30. #define XmParentTopShadowGC(w)         \
  31.     (((XmManagerWidget) XtParent(w))->manager.top_shadow_GC)
  32.  
  33. #define XmParentBottomShadowGC(w)    \
  34.     (((XmManagerWidget) XtParent(w))->manager.bottom_shadow_GC)
  35.  
  36. #define XmParentHighlightGC(w)        \
  37.     (((XmManagerWidget) XtParent(w))->manager.highlight_GC)
  38.  
  39. #define XmParentBackgroundGC(w)        \
  40.     (((XmManagerWidget) XtParent(w))->manager.background_GC)
  41.  
  42.  
  43. #define MGR_KeyboardList(m)        \
  44.             (((XmManagerRec *) (m))->manager.keyboard_list)
  45. #define MGR_NumKeyboardEntries(m)    \
  46.             (((XmManagerRec *) (m))->manager.num_keyboard_entries)
  47. #define MGR_SizeKeyboardList(m)        \
  48.             (((XmManagerRec *) (m))->manager.size_keyboard_list)
  49. #define MGR_ShadowThickness(m)        \
  50.             (((XmManagerRec *) (m))->manager.shadow_thickness)
  51.  
  52.  
  53. #define XmInheritTraversalChildrenProc ((XmTraversalChildrenProc) _XtInherit)
  54. #define XmInheritObjectAtPointProc     ((XmObjectAtPointProc) _XtInherit)
  55.  
  56. typedef Boolean (*XmTraversalChildrenProc)( Widget, Widget **, Cardinal *) ;
  57. typedef Widget (*XmObjectAtPointProc)(Widget, Position, Position) ;
  58.  
  59.  
  60. /*  Structure used for storing accelerator and mnemonic information.  */
  61.  
  62. typedef struct 
  63. {
  64.    unsigned int eventType;
  65.    KeySym       keysym;
  66.    KeyCode      key;
  67.    unsigned int modifiers;
  68.    Widget       component;
  69.    Boolean      needGrab;
  70.    Boolean      isMnemonic;
  71. } XmKeyboardData;
  72.  
  73.  
  74. /*  The class definition  */
  75.  
  76. typedef struct {
  77.     XtPointer next_extension;
  78.     XrmQuark record_type;
  79.     long version;
  80.     Cardinal record_size;
  81.     XmTraversalChildrenProc traversal_children ;
  82.     XmObjectAtPointProc     object_at_point ;
  83. } XmManagerClassExtRec, *XmManagerClassExt ;
  84.  
  85. #define XmManagerClassExtVersion 1L
  86.  
  87. #ifdef _SGIMOTIF
  88.  
  89. typedef struct __SG_XmManagerClassExtPart {
  90.         
  91.   SgRenderShadowsProc render_shadows;
  92.   visual_state_array  default_state_array;
  93.  
  94. }_SG_XmManagerClassExtPart;
  95.  
  96. typedef struct __SG_XmManagerClassExt {
  97.  
  98.   _SgClassExtensionRec common;
  99.   _SG_XmManagerClassExtPart manager;
  100.  
  101. } _SG_XmManagerClassExtRec, *_SG_XmManagerClassExt;
  102.  
  103. #endif /* _SGIMOTIF */
  104.  
  105. typedef struct _XmManagerClassPart
  106. {
  107.    String               translations;
  108.    XmSyntheticResource * syn_resources;   
  109.    int                  num_syn_resources;   
  110.    XmSyntheticResource * syn_constraint_resources;   
  111.    int                  num_syn_constraint_resources;   
  112.    XmParentProcessProc  parent_process;
  113.    XtPointer            extension;
  114.    
  115. #ifdef _SGIMOTIF
  116.    _SgClassExtension    _SG_vendorExtension;
  117. #endif
  118.  
  119. } XmManagerClassPart;
  120.  
  121. typedef struct _XmManagerClassRec
  122. {
  123.     CoreClassPart       core_class;
  124.     CompositeClassPart  composite_class;
  125.     ConstraintClassPart constraint_class;
  126.     XmManagerClassPart  manager_class;
  127. } XmManagerClassRec;
  128.  
  129. externalref XmManagerClassRec xmManagerClassRec;
  130.  
  131. #ifdef _SGIMOTIF
  132.  
  133. typedef struct __SG_XmManagerExtPart {
  134.         
  135.   visual_state_array instance_state_array;
  136.   int    visual_state;
  137.   shaderptr shader;
  138.   Boolean draw_frame;
  139.   Boolean draw_internal_frame;
  140.  
  141. } _SG_XmManagerExtPart;
  142.  
  143. typedef struct __SG_XmManagerExt {
  144.  
  145.   _SgInstanceExtensionRec     common;   /* Stuff all instance rec's have */
  146.   _SG_XmManagerExtPart      instance;
  147.  
  148. } _SG_XmManagerExtRec, *_SG_XmManagerExt;
  149.  
  150. #define _SG_ManagerPtr(w) \
  151. ((_SG_XmManagerExt)(((XmManagerWidget)(w))->manager._SG_vendorExtension))
  152.  
  153. #define _SG_ManagerClassPtr(wc) \
  154. ((_SG_XmManagerClassExt)(((XmManagerClassRec*)(wc))-> \
  155.                 manager_class._SG_vendorExtension))
  156.  
  157. #endif /* _SGIMOTIF */
  158.  
  159. /*  The instance definition  */
  160.  
  161. typedef struct _XmManagerPart
  162. {
  163.    Pixel   foreground;
  164.  
  165.    Dimension   shadow_thickness;
  166.    Pixel   top_shadow_color;
  167.    Pixmap  top_shadow_pixmap;
  168.    Pixel   bottom_shadow_color;
  169.    Pixmap  bottom_shadow_pixmap;
  170.  
  171.    Pixel   highlight_color;
  172.    Pixmap  highlight_pixmap;
  173.  
  174.    XtCallbackList help_callback;
  175.    XtPointer      user_data;
  176.  
  177.    Boolean traversal_on;
  178.    unsigned char unit_type;
  179.    XmNavigationType navigation_type;
  180.    
  181.    Boolean event_handler_added;
  182.    Widget  active_child;
  183.    Widget  highlighted_widget;
  184.    Widget  accelerator_widget;
  185.  
  186.    Boolean has_focus;
  187.  
  188.    XmStringDirection string_direction;
  189.  
  190.    XmKeyboardData * keyboard_list;
  191.    short num_keyboard_entries;
  192.    short size_keyboard_list;
  193.  
  194.    XmGadget selected_gadget;
  195.    XmGadget eligible_for_multi_button_event;
  196.  
  197.    GC      background_GC;
  198.    GC      highlight_GC;
  199.    GC      top_shadow_GC;
  200.    GC      bottom_shadow_GC;
  201.  
  202.    Widget  initial_focus;
  203.  
  204. #ifdef _SGIMOTIF
  205.    _SG_XmManagerExt    _SG_vendorExtension;
  206. #endif
  207.  
  208. #ifndef XM_PART_BC
  209.    XtCallbackList   popup_handler_callback;
  210. #endif
  211.  
  212. } XmManagerPart;
  213.  
  214. typedef struct _XmManagerRec
  215. {
  216.    CorePart       core;
  217.    CompositePart  composite;
  218.    ConstraintPart constraint;
  219.    XmManagerPart  manager;
  220. } XmManagerRec;
  221.  
  222.  
  223. /*  The constraint definition  */
  224.  
  225. typedef struct _XmManagerConstraintPart
  226. {
  227.    int unused;
  228.    
  229. #ifdef _SGIMOTIF
  230.    XtPointer    _SG_vendorExtension;
  231. #endif
  232.  
  233. } XmManagerConstraintPart;
  234.  
  235. typedef struct _XmManagerConstraintRec
  236. {
  237.    XmManagerConstraintPart manager;
  238. } XmManagerConstraintRec, * XmManagerConstraintPtr;
  239.  
  240.  
  241. #ifdef __cplusplus
  242. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  243. #endif
  244.  
  245. #endif /* _XmManagerP_h */
  246. /* DON'T ADD ANYTHING AFTER THIS #endif */
  247.